<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>H5微应用开发教学</title>
    <meta name="viewport"
          content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no">
</head>
<body>
<hr>
    <h1>H5微应用免登教学</h1>
    <p>当前页面的url:</p>
    <p id="url"></p>
<br>
<p>解析url,获取的corpID:</p>
<p id="corpId"></p>
<br>
<p>SDK初始化获取的code:</p>
<p id="code"></p>
<br>
<p>请求我们服务端,登录返回的结果:</p>
<p id="res"></p>
</body>
<!-- 这个必须引入的啊，钉钉的前端js SDK, 使用框架的请自行参照开发文档 -->
<script src="https://g.alicdn.com/dingding/dingtalk-jsapi/2.7.13/dingtalk.open.js"></script>
<!-- 这个jquery 想不想引入自己决定，没什么影响 -->
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/vConsole/3.3.4/vconsole.min.js"></script>
<script>
    $(function () {
        // init vConsole
        var vConsole = new VConsole();

        //钉钉sdk 初始化
        // dd.ready参数为回调函数，在环境准备就绪时触发，jsapi的调用需要保证在该回调函数触发后调用，否则无效。
        dd.ready(function () {
            //获取当前网页的url
            var currentUrl = document.location.toString();
            $("#url").append(currentUrl);

            // 解析url中包含的corpId
            var corpId = query("corpId");
            $("#corpId").append(corpId);

            //使用SDK 获取免登授权码
            dd.runtime.permission.requestAuthCode({
                corpId: corpId,
                onSuccess: function (res) {
                    var code = res.code;
                    $("#code").append(code);

                    //请求我们服务端的登陆地址
                    $.get("https://feimath.utools.club/lawyer/login", "code=" + code + "&corpId=" + corpId, function (response) {
                        // 我们服务器返回的信息
                        // 下面代码主要是将返回结果显示出来，可以根据自己的数据结构随便写
                        $("#res").append(`<pre>${JSON.stringify(response, 2, 2)}</pre>`);
                        JSON.stringify(res.data, 2, 2)
                        $.ajax({
                            async: true,
                            type: "POST",
                            url: "http://nyan.natapp1.cc/app/user",
                            headers: {
                                unionid: response.user.unionId
                            },
                            success: function (res) {
                                console.log(res.data);
                            }
                        })
                    });
                }
            });
        });
    });

    function query(name) {
        var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search);
        return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
    }

</script>
</html>
